# Техническое задание ## Общая информация Необходимо разработать веб-приложение для генерации G-code для ЧПУ-плоттера (станок с ручкой вместо лазера). Станок предназначен для письма по бумаге, поэтому главная задача проекта — максимально реалистичное воспроизведение человеческого почерка. Главное отличие проекта от существующих программ заключается в том, что пользователь сможет создать собственный рукописный шрифт, после чего сайт будет автоматически преобразовывать любой текст в этот почерк и генерировать G-code для станка. --- # Основной функционал ## 1. Рабочая область После открытия сайта пользователь попадает в редактор. Рабочая область должна представлять собой виртуальный лист бумаги. Желательно добавить возможность выбора формата: - Тетрадный лист - A4 - A5 - Пользовательский размер Также желательно добавить: - отображение полей; - отображение строк как в тетради; - масштабирование; - перемещение по листу. --- ## 2. Ввод текста Пользователь вводит обычный текст. Можно настроить: - размер текста; - расстояние между буквами; - расстояние между словами; - межстрочный интервал; - отступы; - положение текста на листе; - выравнивание. После изменения параметров пользователь сразу видит предварительный результат. --- # 3. Создание собственного почерка (главная функция) Необходимо реализовать отдельный раздел «Создать почерк». Работа должна происходить следующим образом. ### Шаг 1 Пользователь нажимает кнопку «Создать новый почерк». Затем вводит название своего шрифта. Например: - Почерк №1 - Школьный - Рабочий - Мой почерк --- ### Шаг 2 На экране появляется большая область для рисования. На фоне отображается полупрозрачная буква-образец (примерно 20–30% прозрачности). Эта буква служит только ориентиром по размеру и расположению. Пользователь должен обвести или написать свою букву поверх образца. После завершения нажимает «Далее». --- ### Шаг 3 Система по очереди предлагает написать: ### Русский алфавит - все прописные буквы (А–Я) - все строчные буквы (а–я) ### Английский алфавит - A–Z - a–z ### Цифры 0–9 ### Знаки Например: - . - , - : - ; - ! - ? - " - ' - ( - ) - [ - ] - - - — - + - = - / - - % - № - @ - & - * После написания каждого символа система автоматически сохраняет его. В любой момент можно вернуться назад и переписать любую букву. --- ### Шаг 4 После заполнения всех символов сайт автоматически создает персональный рукописный шрифт пользователя. В дальнейшем при вводе любого текста каждая буква будет заменяться соответствующей буквой из созданного пользователем набора. То есть сайт не использует готовые шрифты — он собирает текст из нарисованных пользователем символов. Это позволит получить максимально естественный почерк. В перспективе можно добавить небольшую случайную вариацию положения и наклона букв, чтобы текст выглядел ещё более живым и не создавалось впечатление, что каждая одинаковая буква полностью идентична. --- # 4. Генерация G-code После формирования страницы сайт должен: - преобразовать рукописный текст в векторные линии; - построить оптимальную траекторию движения ручки; - автоматически сгенерировать G-code; - предоставить возможность скачать готовый файл. G-code должен быть полностью совместим с используемым ЧПУ-плоттером. --- # 5. Подключение к станку Желательно реализовать возможность подключения станка напрямую через сайт. Функции подключения: - автоматическое определение доступных COM-портов; - ручной выбор COM-порта (например COM3, COM7, COM14 и т.д.); - выбор скорости соединения (Baud Rate), например: 9600 19200 38400 57600 115200 возможность указать свою скорость при необходимости; - кнопка «Подключиться»; - отображение статуса подключения; - кнопка «Отключиться». После успешного подключения желательно добавить возможность: - отправить G-code напрямую на станок без использования сторонних программ; - остановить выполнение; - поставить выполнение на паузу; - продолжить выполнение; - отображать процент выполнения задания; - отображать текущие координаты головки (X, Y, Z); - показывать сообщения контроллера и возможные ошибки. --- # 6. Предпросмотр Перед генерацией G-code пользователь должен видеть точный предварительный просмотр будущего результата. Необходимо отображать: - расположение текста; - масштаб; - перенос строк; - границы листа; - итоговый внешний вид перед печатью. --- # Интерфейс Интерфейс должен быть максимально простым и понятным даже для пользователя без опыта работы с ЧПУ. В настоящее время существует китайская программа с похожим функционалом, однако она имеет ряд недостатков: - полностью китайский интерфейс; - сложное управление; - неудобная навигация; - отсутствует современный и понятный дизайн. Цель проекта — создать современное веб-при
Здравствуйте! На данный момент требуется отрисовать две карты местности для базы отдыха по рендеру. Я от руки нарисую и все подпишу- ваша задача перенести это все в электронный формат. 1) карта базы отдыха 2) карта окрестностей
Добрый день! У меня есть 5 презентаций лекций ( по 50-70 слайдов, но из них многие полупустые), которые сделаны в формате 4/3. Надо поменять формат на 16/9 и, соответсвенно, сдвинуть текст и картинки, чтобы смотрелось гармонично (а не скученно в центре). Менять сами тексты и картинки не надо. Дизайн можно улучшить, если видна необходимость, но основная задача перегруппировать уже существующий контент.
Нам надо подготовить 3D дизайн проект шкафа в прихожей и кухонного гарнитура. И продумать их эргономику. - У фасада Свес фасада - У шкафов торцевая врезная ручка-профиль (Профиль-ручка TW9/TW8) - Подбор другой фурнитуры (Нужны будут ссылки где купить используему в проекте фурнитуру) - Проект в последующем бедет отрисовываться в бизнес мебельщике, потому нужно заранее продумать эргономику кухни/шкафа и подобрать фурнитуру Приложил наброски по кухни (но они не совсем точные, ес...
Здравствуйте! Мне нужно создать программу для windows Все работу готов объяснить перед заказом. Нужен программист который понимает и разбирается в платах Arduino или ESP. Нужно сделать вкладки и написать программу в котором будет время компютере и 4 клика мышки на положенном месте. Я готов подробно объяснить все. Жду Ваши отклики. Пример программы отправляю в файле.